import { createApp } from 'vue'
import type { App } from 'vue'
import Notice from './Index.vue'

export default {
  notice: null,
  install (Vue: App) {
    if (this.notice) {
      // 防止多次载入
      Vue.config.globalProperties.$notice = this.notice
      return
    }
    const instance = createApp(Notice)
    const parent = document.createElement('div')
    const bodyDom = document.body
    // 这里需要注意，大概率app还没有mount，导致获取不到app节点，所以想挂载到app上，需要保证app已经创建。
    bodyDom.appendChild(parent);
    (this as any).notice = instance.mount(parent)
    Vue.config.globalProperties.$notice = this.notice
  }
}
